﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Sinacor.Infra.Tools.SchemaExtractor.Entity
{
    public class Company
    {
        public int Code
        {
            get;
            set;
        }

        public string Name
        {
            get;
            set;
        }

        public string UserName
        {
            get;
            set;
        }

        public string Password
        {
            get;
            set;
        }

        internal string GetDecryptedPassword()
        {
            //TODO: Aplicar shift 90
            return DataEncryptDecrypt(Password);
        }

        private string DataEncryptDecrypt(string value)
        {
            Int32 Contador;
            Char Caracter;
            Int32 Novo;
            string textoCriptografado;

            textoCriptografado = string.Empty;

            for (Contador = 0; Contador < value.Length; Contador++)
            {
                Caracter = value.Substring(Contador, 1).ToCharArray()[0];
                Novo = 90 - (Caracter - 48) + Contador + 1;
                Caracter = Char.ConvertFromUtf32(Novo).ToCharArray()[0];

                textoCriptografado += Caracter.ToString();
            }

            return textoCriptografado;
        }
    }
}
